In [1]:
import plotly.offline as pyo

from plotly.graph_objs import *

import chart_studio.plotly as py

import pandas as pd
from pandas import DataFrame
In [2]:
pyo.offline.init_notebook_mode()
In [4]:
housePrices = pd.read_csv(r"../Data/RegionalHousePricesAndRanksJan16.csv")

regions = ['South West','South East','London', 
           'East of England','West Midlands','East Midlands',
           'Yorkshire and The Humber','North West','North East']

for r in regions:
    housePrices[r + "_text"] = "<b>" + r +"</b><br>Average Price: " + housePrices[r + "_avg"].apply(lambda x: 
        "£{:,}".format(int(round(x, 0)))) + "<br><i>Rank of average price: " + housePrices[r + "_rank"].apply(lambda x: 
                                                                                                             str(int(x))) + "</i>"
housePrices.head(1)
Out[4]:
Date South West_avg South East_avg London_avg East of England_avg West Midlands_avg East Midlands_avg Yorkshire and The Humber_avg North West_avg North East_avg ... North East_rank South West_text South East_text London_text East of England_text West Midlands_text East Midlands_text Yorkshire and The Humber_text North West_text North East_text
0 1995-01-01 54705.1579 64018.87894 74435.76052 56701.5961 45090.91026 45544.52227 44803.42878 43958.48001 42076.35411 ... 9.0 <b>South West</b><br>Average Price: £54,705<br... <b>South East</b><br>Average Price: £64,019<br... <b>London</b><br>Average Price: £74,436<br><i>... <b>East of England</b><br>Average Price: £56,7... <b>West Midlands</b><br>Average Price: £45,091... <b>East Midlands</b><br>Average Price: £45,545... <b>Yorkshire and The Humber</b><br>Average Pri... <b>North West</b><br>Average Price: £43,958<br... <b>North East</b><br>Average Price: £42,076<br...

1 rows × 28 columns

In [7]:
traces = []
for r in regions:
    traces.append({'type' : 'scatter',
                   'x' : housePrices['Date'], 
                   'y' : housePrices[r + "_avg"],
                  'name' : r,
                  'mode' : 'lines'})
    
data = Data(traces)    
layout = {'title' : "Yearly Changes in Average House Price for English Regions, 1995-2016",
         'xaxis' : {'title' : 'Year'},
         'yaxis' : {'tickformat' : ",",
                    'tickprefix' : "£",
                    'title' : 'Average Price'}}

fig = Figure(data=data, layout=layout)    
pyo.iplot(fig)
In [8]:
traces = []
for r in regions:
    traces.append({'type' : 'scatter',
                   'x' : housePrices['Date'], 
                   'y' : housePrices[r + "_avg"],
                  'name' : r,
                  'mode' : 'lines',
                  'text' : housePrices[r + "_text"]})
    
data = Data(traces)    
layout = {'title' : "Yearly Changes in Average House Price for English Regions, 1995-2016",
         'xaxis' : {'title' : 'Year'},
         'yaxis' : {'tickformat' : ",",
                    'tickprefix' : "£",
                    'title' : 'Average Price'}}

fig = Figure(data=data, layout=layout)    
pyo.iplot(fig)
In [9]:
traces = []
for r in regions:
    traces.append({'type' : 'scatter',
                   'x' : housePrices['Date'], 
                   'y' : housePrices[r + "_avg"],
                  'name' : r,
                  'mode' : 'lines',
                  'text' : housePrices[r + "_text"],
                  'hoverinfo' : 'text+x'})
    
data = Data(traces)    
layout = {'title' : "Yearly Changes in Average House Price for English Regions, 1995-2016",
         'xaxis' : {'title' : 'Year'},
         'yaxis' : {'tickformat' : ",",
                    'tickprefix' : "£",
                    'title' : 'Average Price'}}

fig = Figure(data=data, layout=layout)    
pyo.iplot(fig)
In [10]:
traces = []
for r in regions:
    traces.append({'type' : 'scatter',
                   'x' : housePrices['Date'], 
                   'y' : housePrices[r + "_avg"],
                  'name' : r,
                  'mode' : 'lines',
                  'text' : housePrices[r + "_text"],
                  'hoverinfo' : 'text+x'})
    
data = Data(traces)    
layout = {'title' : "Yearly Changes in Average House Price for English Regions, 1995-2016",
         'xaxis' : {'title' : 'Year'},
         'yaxis' : {'tickformat' : ",",
                    'tickprefix' : "£",
                    'title' : 'Average Price'},
         'hovermode' : 'closest'}

fig = Figure(data=data, layout=layout)    
pyo.iplot(fig)
In [ ]: